Adjusting vehicle timing in a transportation network

ABSTRACT

Methods, computer program products, and systems are presented. The methods include, for instance: obtaining passenger information of one or more passenger traveling within a transportation network; and providing one or more output based on a processing of the passenger information.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.15/582,909, filed May 1, 2017, titled “Adjusting Vehicle Timing in aTransportation Network”, which is incorporated by reference herein inits entirety, which is a continuation of U.S. patent application Ser.No. 14/934,684, filed Nov. 6, 2015, and titled “Adjusting Vehicle Timingin a Transportation Network” which is incorporated by reference hereinin its entirety.

TECHNICAL FIELD

The present disclosure relates to transportation network andparticularly to adjusting vehicle departure times in a transportationnetwork.

BACKGROUND

Transportation networks can include a variety of different types oftransportation vehicles. Transportation networks can be provided e.g.,by train transportation networks, bus transportation networks and planetransportation networks. A transportation network can includetransportation lines and stations, e.g. one or more of non-interchangestations or interchange stations. There is often published a baselinetransportation timetable for a transportation network. A baselinetransportation timetable can specify departure times for vehicles in atransportation network.

SUMMARY

The shortcomings of the prior art are overcome, and additionaladvantages are provided, through the provision, in one aspect, of amethod. The method can include, for example: obtaining passengerinformation of one or more passenger traveling within a transportationnetwork, wherein the passenger information includes passenger locationinformation; and providing one or more output based on a processing ofthe passenger information.

In another aspect, a computer program product can be provided. Thecomputer program product can include a computer readable storage mediumreadable by one or more processor and storing instructions for executionby the one or more processor for performing a method. The method caninclude, for example: obtaining passenger information of one or morepassenger traveling within a transportation network, wherein thepassenger information includes passenger location information; andproviding one or more output based on a processing of the passengerinformation.

In a further aspect, a system can be provided. The system can include,for example a memory. In addition, the system can include one or moreprocessor in communication with the memory. Further, the system caninclude program instructions executable by the one or more processor viathe memory to perform a method. The method can include, for example:obtaining passenger information of one or more passenger travelingwithin a transportation network, wherein the passenger informationincludes passenger location information; and providing one or moreoutput based on a processing of the passenger information.

Additional features and advantages are realized through the techniquesset forth herein. Other embodiments and aspects are described in detailherein and are considered a part of the claimed invention.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more aspects of the present invention are particularly pointedout and distinctly claimed as examples in the claims at the conclusionof the specification. The foregoing and other objects, features, andadvantages of the invention are apparent from the following detaileddescription taken in conjunction with the accompanying drawings inwhich:

FIG. 1 depicts a cloud computing environment according to an embodimentas set forth herein;

FIG. 2 depicts abstraction model layers according to an embodiment asset forth herein;

FIG. 3 depicts a hardware overview of a computing node, in accordancewith an embodiment as set forth herein;

FIG. 4A is a block diagram of a system in accordance with an embodimentas set forth herein;

FIG. 4B is diagram of a computing node in accordance with an embodimentherein;

FIG. 4C is diagram of a computing node in accordance with an embodimentherein;

FIG. 4D is diagram of a computing node in accordance with an embodimentherein;

FIG. 4E is diagram of a computing node in accordance with an embodimentherein;

FIG. 4F is diagram of a computing node in accordance with an embodimentherein;

FIG. 4G is diagram of a computing node in accordance with an embodimentherein;

FIG. 5 is a flow diagram illustrating a method in accordance with anembodiment as set forth herein;

FIG. 6 is a diagram illustrating a transportation network in accordancewith an embodiment as set forth herein;

FIG. 7 is a diagram illustrating a section of a transportation networkin accordance with an embodiment as set forth herein;

FIG. 8 is a diagram illustrating a section of a transportation networkin accordance with an embodiment as set forth herein;

FIG. 9 is a diagram illustrating a passenger flow at a station of atransportation network in accordance with an embodiment as set forthherein;

FIG. 10 is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 11A is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 11B is a diagram illustrating passenger flow in accordance with anembodiment as set forth herein;

FIG. 12A is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 12B is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 13 is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 14 is a diagram illustrating passenger volume in accordance with anembodiment as set forth herein;

FIG. 15 is a timetable in accordance with an embodiment as set forthherein;

FIG. 16 is a diagram illustrating a section of a transportation networkin accordance with an embodiment as set forth herein;

FIG. 17A is a timetable in accordance with an embodiment as set forthherein;

FIG. 17B is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 17C is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 17D is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 18A is a timetable in accordance with an embodiment as set forthherein;

FIG. 18B is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 18C is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 18D is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 19A is a timetable in accordance with an embodiment as set forthherein;

FIG. 19B is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 19C is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 19D is a passenger flow matrix in accordance with an embodiment asset forth herein;

FIG. 20 is a diagram illustrating determining of a premature departurein accordance with an embodiment as set forth herein;

FIG. 21 is a flow diagram illustrating a method in accordance with anembodiment as set forth herein.

DETAILED DESCRIPTION

Aspects of the present disclosure and certain features, advantages, anddetails thereof, are explained more fully below with reference to thenon-limiting examples illustrated in the accompanying drawings.Descriptions of well-known materials, fabrication tools, processingtechniques, etc., are omitted so as not to unnecessarily obscure thedisclosure in detail. It should be understood, however, that thedetailed description and the specific examples, while indicating aspectsof the invention, are given by way of illustration only, and not by wayof limitation. Various substitutions, modifications, additions, and/orarrangements, within the spirit and/or scope of the underlying inventiveconcepts will be apparent to those skilled in the art from thisdisclosure.

The present disclosure provides, in part, methods, computer programproducts, and systems for adjusting vehicle timing in a transportationnetwork.

Advantageously, the techniques disclosed herein allow for optimizationof vehicle and/or passenger flow in a transportation network.Embodiments herein recognize that vehicle and/or passenger flow is oftennot optimized in a transportation network. Techniques herein can beuseful e.g. in reducing a cumulative wait time of passengers of atransportation network. Techniques set forth herein can be useful e.g.in determining unwanted passenger congestion in a transportation networkand in relieving unwanted passenger congestion in a transportationnetwork. In one embodiment passenger congestion can be addressedcontemporaneously with determining of a current congestion condition.

It is understood in advance that although this disclosure includes adetailed description on cloud computing, implementation of the teachingsrecited herein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g. networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes.

Referring now to FIG. 1, illustrative cloud computing environment 50 isdepicted. As shown, cloud computing environment 50 comprises one or morecloud computing nodes 10 with which local computing devices used bycloud consumers, such as, for example, personal digital assistant (PDA)or cellular telephone 54A, desktop computer 54B, laptop computer 54C,and/or automobile computer system 54N may communicate. Nodes 10 maycommunicate with one another. They may be grouped (not shown) physicallyor virtually, in one or more networks, such as Private, Community,Public, or Hybrid clouds as described hereinabove, or a combinationthereof. This allows cloud computing environment 50 to offerinfrastructure, platforms and/or software as services for which a cloudconsumer does not need to maintain resources on a local computingdevice. It is understood that the types of computing devices 54A-N shownin FIG. 1 are intended to be illustrative only and that computing nodes10 and cloud computing environment 50 can communicate with any type ofcomputerized device over any type of network and/or network addressableconnection (e.g., using a web browser).

Referring now to FIG. 2, a set of functional abstraction layers providedby cloud computing environment 50 (FIG. 1) is shown. It should beunderstood in advance that the components, layers, and functions shownin FIG. 2 are intended to be illustrative only and embodiments of theinvention are not limited thereto. As depicted, the following layers andcorresponding functions are provided:

Hardware and software layer 60 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 61; RISC(Reduced Instruction Set Computer) architecture based servers 62;servers 63; blade servers 64; storage devices 65; and networks andnetworking components 66. In some embodiments, software componentsinclude network application server software 67 and database software 68.

Virtualization layer 70 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers71; virtual storage 72; virtual networks 73, including virtual privatenetworks; virtual applications and operating systems 74; and virtualclients 75.

In one example, management layer 80 may provide the functions describedbelow. Resource provisioning 81 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 82provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may comprise applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 83 provides access to the cloud computing environment forconsumers and system administrators. Service level management 84provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 85 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 90 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 91; software development and lifecycle management 92; virtualclassroom education delivery 93; data analytics processing 94;transaction processing 95; and transportation network timing processing96.

Referring now to FIG. 3, a schematic of an example of a computing nodeis shown. Computing node 100 is only one example of a suitable computingnode and is not intended to suggest any limitation as to the scope ofuse or functionality of embodiments of the invention described herein.Regardless, computing node 100 is capable of being implemented and/orperforming any of the functionality set forth hereinabove.

In one embodiment, computing node 100 can be provided as a cloudcomputing node 10 of a cloud computing environment 50. In oneembodiment, computing node 100 can be provided as a computing node of acomputing environment other than a cloud computing environment.

In computing node 100 there is a computer system 12, which isoperational with numerous other general purpose or special purposecomputing system environments or configurations. Examples of well-knowncomputing systems, environments, and/or configurations that may besuitable for use with computer system 12 include, but are not limitedto, personal computer systems, server computer systems, thin clients,thick clients, hand-held or laptop devices, multiprocessor systems,microprocessor-based systems, set top boxes, programmable consumerelectronics, network PCs, minicomputer systems, mainframe computersystems, and distributed cloud computing environments that include anyof the above systems or devices, and the like.

Computer system 12 may be described in the general context of computersystem-executable instructions, such as program modules, being executedby a computer system. Generally, program modules may include routines,programs, objects, components, logic, data structures, and so on thatperform particular tasks or implement particular abstract data types.Computer system 12 may be practiced in distributed cloud computingenvironments where tasks are performed by remote processing devices thatare linked through a communications network. In a distributed cloudcomputing environment, program modules may be located in both local andremote computer system storage media including memory storage devices.

As shown in FIG. 3, computer system 12 in computing node 100 is shown inthe form of a general-purpose computing device. The components ofcomputer system 12 may include, but are not limited to, one or moreprocessor 16, a system memory 28, and a bus 18 that couples varioussystem components including system memory 28 to one or more processor16.

Bus 18 represents one or more of any of several types of bus structures,including a memory bus or memory controller, a peripheral bus, anaccelerated graphics port, and a processor or local bus using any of avariety of bus architectures. By way of example, and not limitation,such architectures include Industry Standard Architecture (ISA) bus,Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, VideoElectronics Standards Association (VESA) local bus, and PeripheralComponent Interconnects (PCI) bus.

Computer system 12 typically includes a variety of computer systemreadable media. Such media may be any available media that is accessibleby computer system 12, and it includes both volatile and non-volatilemedia, removable and non-removable media.

System memory 28 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) 30 and/or cachememory 32. Computer system 12 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 34 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(not shown and typically called a “hard drive”). Although not shown, amagnetic disk drive for reading from and writing to a removable,non-volatile magnetic disk (e.g., a “floppy disk”), and an optical diskdrive for reading from or writing to a removable, non-volatile opticaldisk such as a CD-ROM, DVD-ROM or other optical media can be provided.In such instances, each can be connected to bus 18 by one or more datamedia interfaces. As will be further depicted and described below,memory 28 may include at least one or more program (e.g., one or moreprogram 440 and/or one or more program 40A-40N as set forth herein)configured to carry out the functions of embodiments of the invention.

One or more program 440, having a set (at least one) of program modules,may be stored in memory 28 by way of example, and not limitation, aswell as an operating system, one or more application programs, otherprogram modules, and program data. Each of the operating system, one ormore application programs, other program modules, and program data orsome combination thereof, may include an implementation of a networkingenvironment. In place of or in addition to one or more program 440,memory 28 can store one or more additional one or more program, e.g.,one or more program 441A-441N, 442A-442N, 443.

Computer system 12 may also communicate with one or more externaldevices 14 such as a keyboard, a pointing device, a display 24, etc.;one or more devices that enable a user to interact with computer system12; and/or any devices (e.g., network card, modem, etc.) that enablecomputer system 12 to communicate with one or more other computingdevices. Such communication can occur via Input/Output (I/O) interfaces22. Still yet, computer system 12 can communicate with one or morenetworks such as a local area network (LAN), a general wide area network(WAN), and/or a public network (e.g., the Internet) via network adapter20. As depicted, network adapter 20 communicates with the othercomponents of computer system 12 via bus 18. It should be understoodthat although not shown, other hardware and/or software components couldbe used in conjunction with computer system 12. Examples, include, butare not limited to: microcode, device vehicle operators, redundantprocessing units, external disk drive arrays, RAID systems, tape drives,and data archival storage systems, etc. In addition to or in place ofhaving external devices 14 and display 24, which can be configured toprovide user interface functionality, computer system 12 of computingnode 100 in one embodiment can include and display 25 connected to bus18. Display 25 can be configured as a touch screen display and can beconfigured to provide user interface functionality. Computer system inone embodiment can also include one or more sensor device 27 connectedto bus 18. One or more sensor device 27 can alternatively be connectedthrough I/O interface(s) 22. One or more sensor device 27 can include aGlobal Positioning Sensor (GPS) device in one embodiment and can beconfigured to provide a location of computing node 100.

A representative one or more program of one or more program 440,441A-441N, 442A-442N, 443 can have a set (at least one) of programmodules, and may be stored in memory 28 by way of example, and notlimitation, as well as an operating system, one or more applicationprograms, other program modules, and program data. Each of the operatingsystem, one or more application programs, other program modules, programdata, and one or more program, or some combination thereof, may includean implementation of a networking environment. One or more program 440(and optionally at least one program of one or more program 441A-441N,442A-442N, 443) can generally carry out the functions and/ormethodologies of embodiments of the invention as described herein. Oneor more program 440 (and optionally at least one program of one or moreprogram 441A-441N, 442A-442N, 443) can include computer readable programinstructions as are set forth herein that can be stored in a computerreadable storage medium within a respective computing/processing device.In one embodiment a computer readable storage medium as set forth hereincan be included in memory 28 as set forth in FIG. 3.

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, oreither source code or object code written in any combination of one ormore programming languages, including an object oriented programminglanguage such as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The computer readable program instructions may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer or entirely on the remote computer or server. Inthe latter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider). In some embodiments, electronic circuitry including,for example, programmable logic circuitry, field-programmable gatearrays (FPGA), or programmable logic arrays (PLA) may execute thecomputer readable program instructions by utilizing state information ofthe computer readable program instructions to personalize the electroniccircuitry, in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the figures for example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

FIG. 4A is an exemplary block diagram of a system 400, in accordancewith one or more aspects set forth herein. In the embodiment of FIG. 4,system 400 includes numerous devices, which may be or include computingnodes 100 as previously described, connected by a network 402. Forexample, network 402 may be a physical network or a virtual network. Aphysical network can be, for example, a physical telecommunicationsnetwork connecting numerous computer nodes or systems, such as computerservers and computer clients. By contrast a virtual network can, forexample, combine numerous physical networks or parts thereof into alogical virtual network. In another example, numerous virtual networkscan be defined over a single physical network.

By way of explanation, FIG. 4A depicts an example environment. In oneembodiment, system 400 can include a passenger system 406 and a managerengine 410. In one embodiment system 400 can include a vehicle system414. In one embodiment, passenger system 406 can transmit passengerinformation of one or more passenger to a manager engine 410. In oneembodiment, vehicle system 414 can transmit vehicle information of oneor more vehicle to a manager engine 410. In one embodiment, system 400can include a trajectory database 420. In one embodiment, system 400 caninclude a baseline timetable database 424. In one embodiment, system 400can include an adapted timetable database 428. Shown as being externalto manager engine 410, databases 420 and 424 and/or 428 canalternatively be co-located with manager engine 410. One or more program440 which can run on one or more computing node 100 of manager enginecan obtain information transmitted to manager information.

Regarding passenger system 406, passenger system 406 can include aplurality of computing nodes 100. In one embodiment computing nodes 100at moving locations 4060A-4060N can be provided by mobile devices ofpassengers. At fixed locations 4062A-4062N computing nodes 100 caninclude fixed devices, e.g. PCs of passengers in one embodiment. Atfixed location 4064A-4064N computing nodes 100 can be provided by fixeddata collection terminals at various stations of a transportationnetwork.

Regarding vehicle system 414, vehicle system 414 can include a pluralityof computing nodes 100. In one embodiment computing nodes 100 at movinglocations 4140A-4140N can be provided by mobile devices of vehicleoperators of a transportation network. In one embodiment, computingnodes 100 at locations 4142A-4142N can be provided to determine alocation of one or more vehicle. At locations 4144A-4144N computingnodes 100 can be provided by weigh terminal computing nodes that canweigh vehicles of a transportation network.

An embodiment of a computing node 100 provided by a mobile device isshown in FIG. 4B. In one embodiment, computing node 100 as shown in FIG.4B can be a computing node 100 of a passenger provided as part ofpassenger system 406 depicted in FIG. 4A, e.g., at locations4060A-4060N. In one embodiment, a computing node 100 of a vehicleoperator provided as part of vehicle system 414 depicted in FIG. 4A,e.g., at locations 4140A-4140N can have the form depicted in FIG. 4B.

An embodiment of a computing node 100 provided by a PC is shown in FIG.4C. In one embodiment, computing node 100 as shown in FIG. 4B can be acomputing node 100 of a passenger provided as part of passenger system406 depicted in FIG. 4A, e.g., at locations 4060A-4060N.

An embodiment of a computing node 100 provided by fixed data collectionterminal is shown in FIG. 4D. In one embodiment, computing node 100 asshown in FIG. 4D can be a computing node 100 of a passenger system 406depicted in FIG. 4A, e.g. at fixed locations 4062A-4062N. Computing node100 as shown in FIG. 4D can be fixedly installed on buildinginfrastructure 4622 at a central location of a station through which allpassengers will move through when changing vehicles entering atransportation network or exiting a transportation network at a station.Computing node 100 can have a computer system 12 including a display 25shown in block form in FIG. 3 which can be large in size so that it canbe easily viewed by passengers moving through a station and can beconfigured as a touch screen. Display 25 can be configured to displaytimetable and other information as set forth herein. I/O interfaces 22shown in block form in FIG. 3 can include e.g. a WLAN device and aGSM/LTE device as depicted in FIG. 4D. One or more sensor device 27 asdepicted in block form of FIG. 3 can include, e.g., a GPS device, acamera and built in beaconing devices as depicted in FIG. 4D. System 400can be adapted to perform facial recognition based on a signal providedby a camera of computing node. A passenger traveling through a stationwhere computing node 100 is located can be detected using a beacondevice and/or by facial recognition. A beacon device provided by one ormore sensor device 27 of computing node 100 can act as a collectordevice scanning on different channels to detect nearby travelingpassengers carrying a mobile device. A beacon device can scan e.g. onWIFI/Bluetooth/NFC or other technologies. Computing node 100 in oneembodiment as depicted in FIG. 4D can have a plurality of sensor devices27 provided by a beacon device that are distributed, e.g., at a groundlevel in a station spaced apart from display 25 and at locations formaximizing a likelihood that passenger will be detected using a beacondevice when moving through a station.

An embodiment of a computing node 100 of vehicle system 414 at locations4066A-4066N to determine passenger location of passengers of atransportation network by determining a weight of a vehicle is shown inFIG. 4E. Computing node 100 in the embodiment of FIG. 4E can include oneor more sensor device 27 provided by a load scanner. Alternatively or inaddition one or more sensor device 27 can be provided by one or morecounter e.g. coupled to one or more door of a vehicle.

An embodiment of a computing node 100 of vehicle system 414 at locations4142A-4142N to determine a location of a vehicle is shown in FIG. 4E. Inthe embodiment of FIG. 4E computing node 100 is a computing node 100 ofa transportation network that uses track sensor devices in communicationwith track 4626 to determine a location of a vehicle of a transportationnetwork.

An embodiment of a computing node 100 of vehicle system 414 at locations4142A-4142N to determine a location of a vehicle is shown in FIG. 4F. Inthe embodiment of FIG. 4F computing node 100 is computing node 100mounted within a moving vehicle that can have one or more sensor device27 provided by a GPS device for detecting a location of the movingvehicle. The moving vehicle can be e.g. a train, a bus, a jet airplane,a ship for water travel.

FIG. 5 depicts an embodiment of a process, in accordance with one ormore aspects set forth herein. By way of example, the process describedwith respect to FIG. 5 can be performed using one or more program 440running on one or more device e.g., of manager engine 410 (FIG. 4)having one or more computing node 100 as described with respect to FIG.3. In one embodiment, one or more program 440 can provide thefunctionality of transportation network timing processing 96.

In the embodiment of FIG. 5, one or more program 440 at block 510 canperform obtaining passenger information of one or more passengertraveling within a transportation network; and at block 520 can performproviding one or more output based on a processing of the passengerinformation.

One or more program 440 in one embodiment at block 510 can obtain apassenger location for one or more passenger.

One or more program 440 in one embodiment at block 510 can obtainpassenger information in the form of a passenger trajectory of one ormore passenger.

One or more program 440 in one embodiment at block 520 for processingpassenger information can determine a passenger flow matrix for one ormore station.

One or more program 440 in one embodiment at block 520 for providing anoutput can provide an output in the form of an adapted timetable havingone or more timing adjusted from a timing of a baseline timetable. Atimetable can include a schedule of departures for vehicles of atransportation network.

One or more program 440 in one embodiment at block 520 for providing anoutput can provide an output in the form of a flow matrix output.

One or more program 440 in one embodiment at block 520 for providing anoutput can provide an output in the form of information recommending achange to a passenger trajectory.

In one embodiment, passenger system 406 as shown in FIG. 4 can providean interface to a passenger e.g. on a computing node 100 of thepassenger to allow a passenger to enter trajectory information toregister trajectories from a set of recommended routes.

In one embodiment, one or more program 440 at block 510 and 520 canobtain (block 510) and process (block 520) trajectory information fromregistered trajectories and from tracing registered passengers throughthe transportation network 600.

In one embodiment, one or more program 440 at block 510 and 520 canobtain (block 510) and process (block 520) information about currentpassenger needs (in terms of providing connections with short wait timesfor their trajectories), passenger movements, and data about additionalstatus data influencing the travel time (e.g., congestions, break-downs,outages, bad weather).

In one embodiment, one or more program 440 at block 520 can processinformation to adapt a timetable to the current needs and networkconditions accordingly. One or more program 440 at block 520 to performprocessing can determine an adapted timetable at block 520 to provide anoutput can output an adapted timetable.

In one embodiment, one or more program 440 at block 520 can processinformation other than passenger information, such as vehicleinformation. Vehicle information can include information on a locationof one or more vehicle of the transportation network.

In one embodiment, one or more program 440 at block 520 to provide anoutput can transmit the output to one or more user of the transportationnetwork, e.g. a computing none 100 of one or more passenger and/or oneor more vehicle operator and/or one or more transportation networkoperator.

In one embodiment, one or more program 440 at block 520 to provide anoutput can log one or more adapted timetable to the adapted timetabledatabase 428 so that this information (adapted timetables) can beexamined, e.g. by program processing or otherwise for the next releaseof a baseline timetable.

In one embodiment, one or more program 440 at block 520 for performingprocessing can determine one more flow matrix. In one embodiment, flowmatrices record information about passenger flows on the vertices of thetransportation net in so called flow matrices. In one embodiment, flowmatrices contain either actual passenger flows or normalized flowsthrough an interchange station. In one embodiment one or more program440 at block 520 can determine a cumulative wait time. A cumulative waittime can be determined as a sum of wait times at all stations of atransportation network.

In one embodiment, one or more program at 440 at block 520 can use oneor more determined flow matrix to determine the cumulative wait time ata station as the sum of the products of flow matrices and adaptedtimetables.

In one embodiment, one or more program 440 at block 520 to provide anoutput can output one or more determined flow matrix.

An output herein, e.g., an adapted timetable, a determined flow matrix,other information, can be output for display on a display 24 and/or 25of a computing node 1000. A computing node 100 can be a computing node100 e.g. of a passenger user, a vehicle operator user and/or atransportation network operator user.

In one embodiment, one or more program 440 at block 520 to provide anoutput can output one or more determined adapted timetable to a displaydevice, e.g., a display device of a computing node 100 of a user.

In one embodiment, one or more program 440 at block 520 to provide anoutput can provide an output to adjust a timing of one or more vehicleof the transportation network, e.g. can output an adapted timetablehaving one or more adjusted departure time. In one embodiment where anoutput that is provided at block 520 is an output to adjust a timing ofa vehicle, a machine vehicle operator can operate a vehicle inaccordance with an output timing parameter, e.g. as part of an adaptedtimetable. In one embodiment where an output that is provided at block520 is an output to adjust a timing of a vehicle, a human vehicleoperator can operate a vehicle in accordance with an output timingparameter, e.g. as part of an adapted timetable.

Referring to FIG. 6 a transportation network 600 can contain major linesrunning through non-interchange and interchange stations and minor linesbranching from major lines. Minor lines can run through non-interchangestations. An interchange station can be station where a passenger caninterchange between a first vehicle traveling on a first line and asecond vehicle travelling on a second line. A bond can be regarded anelementary stretch of a line connecting two stations. A route can beregarded as a possible way through the transportation network 600starting at one station and ending at another station. A trajectory canbe a route travelled by a passenger (either currently travelled or oncetravelled in the past) containing 1, . . . , n lines and 0, . . . , kinterchange stations. In one embodiment, passenger system 406 caninclude a one more computing node 100 allowing one or more a passengerto enter trajectory information, which information can be obtained byone or more program 440.

In one embodiment, users of system 400 can plan their trajectorieseither in advance (e.g., at home using a computing node 100 provided bya PC of passenger system 406) or during their journey using anapplication e.g. using a computing node 100 provided on a mobile device(e.g., a mobile phone) of passenger system 406.

Using a computing node 100 of passenger system 406 a passenger canregister their trajectory in the trajectory database 420 of system 400.In one implementation the registration could be only used to conveyinformation about trajectories, in another implementation a payment andticketing system could be connected.

In reference to dynamic selection of a trajectory, a computing node 100provided by a mobile device of passenger system 406 can includes thesame functions as a computing node 100 provided by a fixed device (e.g.,a PC) of passenger system 406 but the computing node 100 provided by amobile device can be used during the trip, e.g. a passenger may changetheir route based updated routes provided by a route planner function ofone or more program, 440. Additionally, with a computing node 100including a sensor device 27 (FIG. 3) provided by a GPS device, thedynamic route planner can utilize GPS information for dynamic routeplanning and can provide the GPS positon of the passenger to thetrajectory database 420, if authorized by the user. One or more program440 can obtain information of trajectory database 420.

Regarding passenger system 406 in one embodiment, data collection fromand data transfers to passengers in selected locations (stations,platforms) can be performed using computing nodes 100 provided by datacollection terminals e.g. as shown in FIG. 4D in one embodiment at fixedlocations 4062A-4062N of various stations of system 400.

In one embodiment passenger information obtained by one or more program440 at block 510 can include passenger location information. In oneembodiment, data collection terminals, e.g. as shown in FIG. 4D, can beinstalled for collecting location information of known passengers (e.g.by near field communication (NFC) or Bluetooth) and for transferringtimetable data and route recommendation to passengers (acting in thisway like beacons). In another embodiment, computing nodes 100 ofpassenger system 406 provided by mobile devices of passenger system 406can output passenger location information of a passenger without use ofsuch data collection terminals and can be in bi-directionalcommunication with manager engine 410 without the intermediary of suchdata collections terminals.

A computing node 100 of a passenger provided by a mobile device caninclude one or more sensor device 27 (FIG. 3) provided by a GPS devicefor output of passenger coordinates. In one embodiment, passengerlocation information that can be obtained by one or more program 440 atblock 510 can be output by a vehicle weight sensor as set forth herein,e.g., in connection with FIG. 4E. Further regarding vehicle system 414in one embodiment, in some or all vehicles operated by thetransportation network computing nodes 100 can include a sensor device27 (FIG. 3) provided by a load scanner for providing passenger locationinformation in the form of a current number of passenger travelling on avehicles. Possible implementations of one or more sensor device 27include automatic weight sensor devices coupled with the suspension. Oneor more sensor device 27 can alternatively or in addition include e.g.counter sensor devices coupled to doors of a vehicle. Such computingnodes 100 for obtaining passenger location information by obtaininginformation on a weight of a vehicle in order to determine a weight ofpassengers therein can be regarded to elements of passenger system 406as well as elements of vehicle system 414.

Regarding vehicle system 414 vehicles and/or vehicle operators of thetransportation network 600 can provide automatic input about the currentlocation of a vehicle (e.g., via a sensor device 27 as shown in FIG. 3provided by a GPS device) and/or manual input (current traffic situationlike congestions, accidents, road conditions) using computing nodes 100of vehicle system 414. An example of an on vehicle computing node 100 isset forth in FIG. 4G herein.

Further regarding vehicle system 414 in one embodiment, from a centralpoint, transportation officers can provide information about the fleet(availabilities of vehicles), staff (availability of vehicle operators),traffic, road conditions, observations from stations (crowed platforms),etc. using one or more computing node 100 of vehicle system 414, e.g., acomputing node running one or more program 440.

Referring again to FIG. 4 in addition to passenger system 406 andvehicle system 414 system 400 can include external sources 428 which canprovide information relevant for adapting the timetable which typicallymay not be produced by passenger system 406 or vehicle system 414without external sources like weather forecasts, police reports ontraffic conditions, information about mass events (e.g., footballmatches or fairs), etc.

In one embodiment, one or more program 440 can obtain for processing atblock 520 one or more or the following: passenger location of one ormore passenger from the passenger system 406, a predefined baselinetimetable from baseline timetable database 424, the currently usedtrajectories and historical trajectories from the trajectory database420, the vehicle operators' information from the vehicle system 414, thecentral office information from the vehicle system 414, passengeroccupancy of one or more passenger from passenger system 406 and/orvehicle system 414, and/or additional information from external sources428.

In one embodiment, one or more program 440 can output an adaptedtimetable. One or more program 440 e.g., running on one or more computernode of manager engine 410, can output at block 520 an adapted timetableto one or more user by transmitting an adapted timetable to one or morecomputing node 100 of one or more of passenger system 406 and/or vehiclesystem 414. A user can be e.g. a passenger or a vehicle operator.

Changes made to a baseline timetable can be logged and output to thechange log of adapted timetable database 428. On a regular basis, humananalysts (operators of transportation network 600) of a transport officeof transportation network 600 can review the changes looking forpatterns to improve the predefined baseline timetable in the nextrelease. Alternatively to or in addition to being transmitted to one ormore computing node 100 of passenger system 406 and/or vehicle system414, an output provided at block 520 by one or more program 440 (e.g.,any output set forth herein) can be transmitted e.g., to a computer node100 of an operator (e.g., for display by a display), such a computingnode 100 that runs one or more program 440.

Regarding trajectory selection in one embodiment, a passenger canregister a trip using a route planner application running on a computingnode 100 of passenger system 406. This can be seen as “booking a trip”or “creating a trajectory” using e.g., a computing node 100 provided bya mobile device. System 400 can record the lines and interchanges(transfers between the lines) as “in use by a passenger”. However,system 400 in one embodiment can only assume that the trajectory istraveled, unless the passenger system 406 “confirms” traveling the routeby sending location e.g. GPS data.

In one embodiment, system 400 can be adapted to prevent misuse by makingpersonal user registration compulsory for selecting trajectories(“booking trips”). Otherwise system 400 may be prone to maliciousattacks aiming to distort the timetable by automated, repeatedregistering for the same trajectory.

Regarding tracking of trajectories, passengers using computing node 100provided by a mobile device (as shown e.g., in FIG. 4B) may activatelocation tracking, e.g., a GPS tracking function or near fieldcommunication after the passengers select a trajectory. In oneembodiment, one or more program 440 by obtaining passenger locationinformation at block 510 and processing that information at block 520can register that the trajectory is indeed traveled and at block 520 canprovide an output in the form of a dynamic recommendation during thetrip.

In one embodiment, a passenger by entering appropriate designatingpassenger information into a computing node 100 of passenger system 406can volunteer to be a “traceable passenger”. One or more program 440 canobtain the designating passenger information permitting system 400 tocollect statistical data about frequently used trajectories andinterchanges, i.e. the passenger flow through the transport network 600can be recorded. This can be expressed by denoting probabilities for apassenger traveling at a certain bond of transportation network 600 forcontinuing on the same line or changing to different lines at the nextstop.

As for tracking trajectories above, the one or more program 440 canlearn about interchanges desired by the passengers. In one embodiment ofsystem 400 system 400 can be adapted so that “only” statistical data isneeded (but not personal data). In such embodiment, trajectories can beanonymized after the trajectory was travelled.

In one embodiment, one or more program 440 at block 510 for obtainingpassenger information can obtain passenger location information.Location information tracking that can be performed at block 510 can beperformed in various ways using data obtained from passenger system 406,e.g., GPS tracking using a computing node 100 provided by a mobiledevice e.g., mobile phone, using computing nodes 100 provided by datacollection terminals e.g., as shown in FIG. 4D installed in stations orin vehicles using NCF (near field communication) and/or electronicticket functionality and/or using the Bluetooth function of a computingnode 100 provided by a mobile device, e.g. mobile phone. In oneembodiment, Bluetooth and NCF location tracking may have an advantageover GPS tracking in one embodiment in that location information may bemore readily available in covered locations, like a metal bus shelter,in a station building or in a subway. In one embodiment, tracking usingGPS signals can be advantageous.

Reporting a vehicle load scan of vehicle system using a computing node100 of passenger system 406 adapted to weigh a vehicle, passengers canindicate the utilization of a transport link by contributing to theload. While load scan information supports capacity planning, load scaninformation in one embodiment can be supplemented with information aboututilization of interchange stations between lines. For instance if manypeople leave a train at a stop and many people board a bus at the samestop a few minutes later, it is an indication for a strongly frequentedinterchange station, but it does not rule out the possibility that mostof the train passengers exiting the transportation system 600 and newbus passengers enter the transportation system 600.

In one embodiment at block 520, one or more program 440 for processingpassenger information, can record information in vertices. One or moreprogram 440 at block 520 can record information about passenger movementin the transportation network 600 using the vertices (i.e. on thestations) in datasets that can be referred to as flow matrices (FM). Thefollowing notation can be used: (A) Each flow matrix can identified by anumber i=1, . . . , s like FM₃, where s is the number of stations; (B)The bonds connected to the interchange station are label by the numberof the line. If multiple lines are running in the same track, logicallymultiple bonds exits; (C) Direction is indicated by positive andnegative line numbers. Bonds north and east of the interchange stationhave positive numbers, bonds south and west of the interchange stationhave negative numbers.

In the example of FIG. 7 lines 1 and 2 are depicted as running throughinterchange station 3. In the example of FIG. 8 Lines 2 and 4 aredepicted as running through interchange station 7 sharing the sametrack. Line 13 terminates at interchange station 9.

The passenger flow on an interchange station can be described by an n*nsquare matrix, where n is (2*number of lines traversing theintersection)+(number of lines terminating on the intersection). Therows contain the bonds where the passengers travel from, the columnscontain the bonds where the passengers are traveling to. Consider FIG. 7as an example, the matrix for interchange station 3 on the left handside has the dimension of (2*2)×(2*2)=4×4, the matrix for interchangestation 7 on the right hand side has the dimension (2*2+1)×(2*2+1)=5×5.

An adapted timetable that can be output by system 400 aims to optimizeinterchanges between lines. At block 520 one or more program 440 candetermine a flow matrix, determine an adapted timetable and output anadapted timetable.

FIG. 9 depicts passenger flow through an interchange station in oneembodiment. In a given time interval, t, 150 passengers travelling online 1 eastward toward the interchange station 3 on line 1. Half of thepassenger stay in the vehicle, 45 change to northeast bound line 2, 15change to the southwest bound line 2, and 15 disembark at this stop,however the flow of disembarking passengers is not considered in thiscontext. The passenger flow on an interchange station 3 is described bya square matrix containing 4×4, however the diagonal entries are assumedas zero, as (nearly) nobody travels immediately back. One or moreprogram 440 at block 520 can determine the flow matrix FM₃ as is shownin FIG. 10 depicting flow at interchange station 3 during time.

FIG. 10 is a passenger flow matrix describing the flow of passengers onboard of vehicles and moving between vehicles at an interchange station3 depicted in FIG. 9. In example passenger flow matrix of FIG. 10 theflow shown in FIG. 9 is found in the second data row (hatched) of thetable matrix.

Additionally to the passengers staying in a vehicle and changing toother lines, passengers boarding a line at this station 3 as shown inFIG. 9 can be considered.

It will be seen that cells of a flow matrix in one embodiment canrepresent a number of passengers traveling through an interchangestation within a selected time interval. If a starting time of the timeinterval is made earlier or if the ending time of the time interval ismade later, the number of passengers can be expected to increase. If astarting time of the time interval is made later or if the ending timeof the time interval is made earlier, the number of passengerstravelling through an interchange station can be expected to decrease.Passengers travelling through an interchange station can includepassengers that disembark a first vehicle and board a second vehicle.Passengers travelling through an interchange station can includepassengers that disembark a first vehicle and exit the interchangestation. Passengers travelling through an interchange station caninclude passengers that remain on the same vehicle that travels throughthe interchange station.

FIG. 11 illustrates a flow matrix describing flow of passengers atinterchange station 3 and FIG. 9 with different data highlighted.

Conveniently the number of embarking passengers can be recorded on thediagonal locations of the passenger flow matrix. In the flow diagram ofFIG. 11A above on the right hand side the number of passengers travelingon the line 2 heading northeast in a given time interval are shown.These numbers (in hatched highlight) are shown on the far right columnin the passenger matrix above. FIG. 11B graphically illustrates the datadepicted in FIG. 11A.

The following two matrices of FIG. 12A and 12B are examples for aninterchange station where a line terminates and for a non-interchangestation (a station without interchange). FIG. 12A and 12B are passengerflow matrices depicting passenger flow information.

Regarding passenger flow at stations 4 and 5 illustrated in FIG. 9, fromthe previous example we know that 180 passengers are travelling on line2 northeast toward station 4 (direction marked −2 for station 4), 10 aredisembarking, 10 change to line 11 and 20 new passengers embark on thevehicle.

Additionally to the recording of total number of passengers travellingthrough a station in a certain time interval, one or more program 440 atblock 520 can determine the relative number of passengers, i.e. expressthe flow in percentages. The matrices can normalized in such way thattotal amount of passengers traversing a station or entering a station isset to 100%. At block 520 one or more program 520 can output adetermined passenger flow matrix. A determined passenger flow matrix cana normalized passenger flow matrix as depicted in FIG. 13 or anon-normalized passenger flow matrix as set forth in the remainingexamples herein.

FIG. 13 illustrates a normalized flow matrix of station 3 depicted inFIG. 9. The normalized passenger flow matrix allows to compare flows ofdifferent points in time which each other, for instance at differenttimes of the day or different day of the week. Possible patternrecognition could include: reverse of passenger flows during day (towork, from work) or specific trajectories are frequented during certainhours of the day or days of the week which can be supported by reducedconnection delays at the interchange station.

In one embodiment, one or more program 440 can process passengerinformation provided by trajectory information in the form ofdirectional information. One or more program 440 at block 510 can obtaindata to populate flow matrices being determined from one or more of thefollowing set forth herein: 1.) registered trajectories withouttracking, 2.) Registered trajectories with tracking, and/or 3.)Continuous tracking without a registered trajectory.

One or more program 440 in one embodiment can assign different weightsto obtained passenger information before the passenger informationcontributes in an averaging process. In one implementation, actuallytravelled registered routes with tracking can be accorded a higherweight by one or more program 440 at block 520 than registered routeswithout tracking. In another implementation registered routes in generalcan be accorded a higher weight than continuous tracks, as the“traceable passengers” providing typically a much larger data sample asthe passengers registering their routes manually.

In one embodiment, one or more program 440 at block 520 can average andrecord determined passenger flow matrices in one or more in timeintervals, e.g. some minutes, an hour or for a day. Determiningpassenger flow matrices for different time intervals can offer variousadvantages: (1) Adaption to reoccurring traffic pattern instead ofhaving the same hourly schedule in the timetable through the day withthe same interchange station wait times, a custom schedule can becalculated based on passenger demands. (2) Consideration of historic andcurrent data historic and current data can enter the average processwith different weights, the older the data, the smaller is the weight.For instance data samples could be weighted with a factor e.g. 1/(age indays).

The preferred time interval determined at block 520 by one or moreprogram 440 can depend on the characteristics of transportation network600 (for instance whether the traffic flow is constant over the day orreversing between morning and afternoon) and on the size of theavailable data sample provided by the passengers. Also one or moreprogram at block 520 can apply different time intervals (e.g. hourly,daily, weekly) in parallel to provide different views.

In one embodiment one or more program 440 at block 520 can record datain the actual flow matrices FM_(i)(t) and the normalized flow matricesFM^(N) _(i)(t) for every station i and every time interval t.

In one embodiment at block 510 one or more program 440 can obtain datacontaining passenger volume information, and out block 520 one or moreprogram 440 can process such data.

The volume of passengers traveling in vehicles, denoted as the vehiclevolume data V, can be recorded on the vertices of the transport gridlike the passenger flow matrices as set forth herein.

FIG. 14 illustrates vehicle volume data in one example. For each stationi=1, . . . , s an n-dimensional vector V_(i) contains the absolutenumber of passengers travelling away from the station, e.g. V₃(−2,t)denotes the passenger volume away from station 3 on line 2 in southwestdirection at given time interval t.

In one embodiment at block 520 one more program 440 can determine a waittime. The current wait time WT_(i)(t) (sum of delays for all passenger)for a station i can be calculated from the flow matrix FM_(i)(t) at agiven time t.WT _(i)(t)=Σ_(j,k) FM _(i)(j,k,t)*T _(i)(j,k,t)   (Eq. 1)Where j is the row index (“from”) and k is the column index (“to”) ofthe flow matrix of dimension n*n.

One or more program 440 at block 520 for processing obtain passengerinformation can record timetable information in T where T_(i)(j,k,t)denotes the wait time at station i coming from direction j going todirection k at time t. As an example consider the passenger flow atstation 3 coming from the west (direction −1) at 9:42 as also shown inFIG. 9 herein.

In FIG. 15 there is illustrated an exemplary timetable that one or moreprogram 440 can determine at block 520 based on a processing ofpassenger information at block 520. One or more program 440 at block 520can output a determined timetable.

The upper part of the exemplary timetable of FIG. 15 shows an excerpt ofthe timetable for station 3. Passengers changing between lines 1 and 2need 3 minutes to walk from platform to platform. This time issubtracted from the wait time. The row of the matrix T₃(j=−1,k,t=09:42)contains the wait times for passengers traveling in the directions k=1(1 minute as the vehicle stops at the station), k=2 (6 minutes aspassengers catch the next vehicle), and k=−2 (9 minutes as passengersmiss the next vehicle while they are changing the platform). If thevehicle runs on time, the diagonal entries (denoting passengers enteringthe transport system at this station) T_(i)(j=k,t) are zero. If thevehicle is delayed diagonal entries T_(i)(j=k,t) contain the delay inminutes. The complete cumulative current wait time for all passengers inthe system can be expressed as the sum over all stationsWT(t)=Σ_(i=1) ^(C) WT _(i)(t)   (Eq. 2)

One or more program 440 at block 520 can determine current wait timeWT_(i)(t) for the actual minute t and the timetable matrix T is preparedfor every minute, but the flow matrix can be calculated for a timeinterval to have it filled with a reasonable statistic. In case the flowmatrix is defined for 10 minutes intervals FM_(i)(j,k,t=9:40-9:50) wouldbe used in the example of FIG. 15.

In examples set forth herein above the calculation of the wait timecontains only data from sources 1-3 (trajectories and tracking). One ormore program 440 at block 520 can determine the wait time from thenormalized flow matrix FM^(N) _(i)(t) of the station and the passengervolume data V^(i)(k) at a given time t according to the formulaWT _(i)(t)=Σ_(j,k) FM _(i) ^(N)(j,k,t)*V _(i)(k,t)*T _(i)(j,k,t)   (Eq.3)This approach can be statistically advantageous, e.g., under thefollowing conditions: (1) Flow data (passenger interchanging behavior)is relatively static over a longer period of time. (2) There is lessdata for sampling available for the flow matrices, so flow matrix datais sampled over a longer period of time. (3) Volumes are fluctuatingfaster than flow directions. (4) Volume data is widely available.

In one embodiment, one or more program 440 at block 520 to determine anadapted timetable can alter one or more certain departure times toreduce the overall wait time of passengers. In principle a variety ofkinds of deviations from a baseline timetable are possible, e.g.: (1)Vehicle departures can be delayed by purpose; (2) Vehicles can leaveprematurely. In one embodiment, one or more program 440 at block 520 toperform processing can confirm than an adapted timetable can yieldadvantageous results by determining a cumulative wait time attributableto application of an adapted timetable.

In one embodiment, delay of departures may be well adapted for use withperipheral lines. A peripheral line starts at an interchange station,distributes passengers across an area, waits a certain time at theterminus, collects passengers from the area, brings them to theinterchange station and waits at the interchange station for its nextturn.

Having the momentary wait time WT_(i)(t) calculated as described abovefor different possible delays at the interchange station and the stopsof the peripheral line a decision can be made whether a delay wouldbenefit passengers.

In one embodiment, one or more program 440 at block 520 to determine anadapted timetable can generate plurality of candidate timetables, eachhaving a different set of departure times. One or more program 440 atblock 520 can determine a cumulative wait time for each candidatetimetable and can select as an adapted timetable one of the candidatetimetable that provide a reduced wait time as compared to wait timeattributable to use of a baseline timetable. One or more program 440 atblock 520 can determine a cumulative wait time for each candidatetimetable and can select as an adapted timetable the candidate timetablethat provides the smallest wait time out of the plurality of candidateadapted timetables.

As an example consider the peripheral line 11. The wait time WT_(i)(t)is calculated and summed up for the stops i=4, 21, 22, 23, 24 for theoutbound and subsequent inbound journey for several delays, e.g. 0, 1, .. . , 10 minutes. In case the feeder line 2 is delayed by severalminutes and that few passengers enter line 11 on the outbound journey, adeliberated delay of line 11 could reduce the overall wait time.

In FIG. 16 there is illustrated a diagram for determination of waittimes calculated for a peripheral line. Providing of deliberate delaysto reduce the overall wait time suits typically peripheral lines as theoverall impact on the transportation network can be easily calculated.Deliberate delays on major lines could create cascading delays.Additionally the computational effort could be enormous when effects ofdeliberate delays ripple through the transportation network. Onperipheral lines the adverse effects of a deliberate delay can be fairlywell controlled if the deliberate delay is less than the wait time atthe terminus plus some possible incidental delay.

Consider as an example the timetable and passenger flows for station 4as depicted in FIG. 16. Most of the passengers travel through thestation on line 2. Passengers starting on line 11 typically change toline 2 southwest bound and take the same way back. From the publishedtimetable (upper left table in the diagram) the system calculates (at agiven time say 7:20) the number of waiting minutes for each possibleroute (upper right corner in the diagram). For instance changing fromline 2 east bound (arriving at 7:31) to line 11 (departing at 7:36) apassenger requires 3 minutes to change platforms and waits for 2minutes. A passenger continuing on line 2 waits 1 minute in the station.When all vehicles run on time, the wait time for passengers entering thesystem is regarded as zero.

In FIG. 17A a timetable is illustrated depicting wait times at station 4when all vehicles are on schedule. Taking the known flow matrix FM₄(t)for station 4 for the select time interval 7:00-8:00 the currentcumulative wait time WT₄(t) (sum of delays for all passenger) can becalculated as shown in the lower half of the diagram. (FIGS. 17B-17D).WT ₄(t=7:20)=Σ_(j,k=−2,2,11) FM ₄(j,k,t)*T ₄(j,k,t)=735 minutes   (Eq.4)

Consider now the case that the line 2 east bound runs 5 minutes late.Consequently the 30 passengers changing to line 11 have to wait for thenext turn as they cannot change the platform instantaneously.Additionally the 25 passengers boarding line 2 have to wait for 5minutes. The wait time for all passengers increases to 1,610 minutes.

In FIG. 18A there is shown a timetable depicting wait times at station 4when the line 2 east bound is delayed. Flow matrices are depicted inFIGS. 18A-18A to reduce the overall wait time the system adapts thedeparture time of line 11 by 5 minutes to 7:41. For passengers changingfrom the delayed line 2 to line 11 the wait time is reduced to normal(improvement of 750 minutes), however the few passengers boarding line11 have to wait for 5 minutes (contributing to 25 minutes). The totalgain is 725 minutes.

In FIG. 19A there is depicted a timetable illustrating a reduction ofthe wait time by delaying the departure of line 11. Flow matrices aredepicted in FIG. 19B-19D.

Mathematically a delay departure of only 3 minutes would reduce the waittime. In one embodiment, one or more program factors for a time to allowpassengers, including more agile and less agile passengers to catch line11. Passengers boarding line 11 at the stations 21, 22, and 23 can beconsidered. In one example only one passenger is boarding at each stop,the wait time applying the adapted timetable isWT(t)=WT₄(t)+WT₂₁(t)+WT₂₂(t)+WT₂₃(t)=885+5+5+5=900, in comparison to1600. A delay of a single vehicle in one example can have significantimpact on a cumulative delay, e.g., if numerous passengers miss aconnection as a result of a delay. Techniques herein can be useful,e.g., in reducing a cumulative wait time of passengers of atransportation network. In one embodiment, a cumulative wait time can bedetermined as the sum of wait times at an entirety of stations of atransportation network. In one embodiment, a cumulative wait time can bedetermined as the sum of wait times at a subset of stations of atransportation network, e.g., at a subset of stations that can beselected e.g. using a user interface of one or more computing node 100running one or more program 440.

In one embodiment, one or more program 440 can determine to performprocessing at block 520 a premature departure time, and can provide anoutput at block 520 by output of the premature departure time. Adeparture time herein can be output as part of an adapted timetable. Apremature departure time can be a departure time earlier that a baselinedeparture time of a baseline timetable. In one embodiment one or moreprogram 440 can determine and output premature departure time at block520 such that the overall wait time could rise as some passengers misstheir planned turn or miss a connection. However intentional prematuredepartures could compensate delays accumulated during the trip, e.g.,due to a large amount of passengers boarding and alighting the vehicle.In this way consequent effects are reduced. As an example, the overallwait time could be reduced if a vehicle of a major line starts earlierfrom the terminus so that it is expect to arrive in time at the centralstation. FIG. 20 provides a diagram illustrating reducing the delay bydeparting prematurely.

To make a decision about a premature departure, one or more program 440at block 520 can determine a momentary wait time WT_(i)(t) for eachstation affected and summed up for the stations on the line consideredand for possible connections. Practically, not all possible connectionscan be evaluated for various premature departure times, however as thepassenger flows are known, a reasonable cut-off can be introduced, i.e.,in one embodiment a passenger flow below a certain threshold will not beconsidered. The concept of premature is more easily acceptable for thepassengers when many of them using a mobile route planner and can beinformed during a trip.

At block 520 one or more program 440 can provide an output. In oneembodiment, the output can be provided by an adapted timetable. In oneembodiment, one or more program 440 at block 520 can output an adaptedtimetable to a computing node 100 e.g., of a passenger and/or vehicleoperator and or a transportation network operator.

In one embodiment, one or more program at 440 at block 520 can providean output in the form of a route planner.

Passengers who have registered a trip in the route planner and“traceable passengers” (see section information gathering) are contactedby system 400 in the following ways. In one embodiment one or moreprogram 440 at block 520 to provide an output can transmit informationto passengers, e.g., in the form of an adapted timetable, informingpassengers about shifted departure times for alternative routes tominimize their travel time in the current situation and to shiftpassenger loads away from overloaded vehicles.

Because one or more program 440 has recorded the location of “traceabletravelers” (either by GPS or by near field communication) it is notnecessary in all cases to transmit the full route update (containingmaybe several interconnections) to the passenger, rather for convenienceof the passenger only next step may be transmitted by one or moreprogram 440 at block 520 (e.g., “change now to line 5”) to the passengervia a computing node 100 of the passenger. Near field communication(NFC) devices serve as physical beacons. When using GPS logical beaconscan be defined.

One or more program 440 at block 520 can determine an adapted timetableadapted to passengers needs and also at block 520 can provide an outputby transmitting the adapted timetable to a computing node 100 of a user,e.g., a passenger and/or a vehicle operator and/or transportationnetwork operator. The information collected and processed by one or moreprogram 440 can be utilized by system 400 for other purposes as well,e.g., capacity management.

Whenever feasible in a given (relatively short) time window alterationsto the transportation capacity (number of vehicles, number of seats pervehicle) can be performed dynamically.

In one embodiment, a ticket selling channel can be provided attransportation network 600. In case a certain exceptional demand for acertain trajectory is observed the transportation organization cancontact current and potential travelers to sell them (maybe with anuplift) tickets for an additional connection. These additionalconnections could be interesting for the passengers to avoid a crowedconnection or to travel even in less time. For instance a transportationnetwork service provider could schedule additional turns without theintermediate stops to reduce the load on the scheduled connection andtransport a subset of the passengers faster to their destination.

FIG. 21 is a diagram illustrating further aspects of a process forproviding an output of transportation network. By way of explanation, inFIG. 21, processes are illustrated from the point of view of a managerengine one or more program 440 (e.g., running on manager engine 410 ofFIG. 4), passenger system one or more program 441A-441N and vehiclesystem one or more program 442A-442N.

In one embodiment, some or all of the one or more program 440,441A-441N, 442A-442N may run on a different collection of physical orvirtual machines or processors, depending on the need for scalability ofthe system. In one embodiment, each of the one or more program 440,441A-441N, 442A-442N can run on a different computer node. In onespecific example, each of the one or more program 440, 441A-441N,442A-442N can run on a single multi-processor server system. In anotherspecific example, various portions of manager engine one or more program440 may run on different processors running on different computingnodes. In one embodiment, each one or more passenger system one or moreprogram, 441A-441N can run on a different passenger system computingnode 100 of passenger system 406, each provided by a mobile device. Inone embodiment, each one or more passenger system one or more program,441A-441N can run on a different vehicle system computing node 100 ofvehicle system 414, e.g., each provided within a different vehicle oftransportation network.

By way of overview, FIG. 21 illustrates, at least in part, one or moreembodiments in which an output can be provided in a transportationnetwork.

In one embodiment, at blocks 2102-2104 passenger system one or moreprograms 441A-441N can output passenger information by transmitting thepassenger information to one or more program 440. Passenger informationcan include e.g. passenger trajectories, and/or timestamped passengerlocations and/or other passenger information set forth herein. At blocks2203-2205 one or program 440 can obtain the output passengerinformation.

In one embodiment at blocks 2106-2108 vehicle system one or more program442A-442N can output vehicle information. Vehicle system information caninclude e.g., vehicle location information and/or other vehicleinformation as set forth herein. At blocks 2207-2209 one or program 440can obtain the output vehicle information.

In one embodiment at block 2212 one or more program 440 can process theobtained information obtained at blocks 2203-2205 and/or at block2207-2209. In one embodiment at block 2212 one or more program 440 candetermine a timetable based on a processing of one or more of passengerinformation or vehicle information. For determining a timetable at block2212 one or more program 440 can determine a passenger flow matrix forone or more station as set forth herein. For determining a timetable atblock 2212 one or more program 440 can determine one or more wait timeas set forth herein.

In one embodiment, at blocks 2220-2222 one or more program 440 canoutput a timetable to respective passenger system one or more programs441A-441N. At blocks 2121-2123 one or more programs 441A-441N can obtainthe output timetable.

In one embodiment, at blocks 2224-2226 one or more program 440 canoutput a timetable to respective vehicle system one or more programs442A-442N. At blocks 2125-2127 one or more programs 442A-442N can obtainthe output timetable. Referring to the flow diagram of FIG. 21, blocks2203 and 2205 shown as being performed by one or more program 440 canrepresent an example of performance of block 510 (FIG. 5) in oneembodiment. Referring to the flow diagram of FIG. 21, blocks 2212, 2220,2222, 2224 and 2226 shown as being performed by one or more program 440can represent an example of performance of block 520 (FIG. 5) in oneembodiment.

In baseline timetables and adapted timetables set forth herein timingparameters can be provided in the form of vehicle departure times. Itwill be understood that in alternative embodiments, timing parameterscan in addition or in the alternative be provided by, e.g., vehiclearrival times, and/or vehicle speed (distance/time). In one embodiment aprocessing of a flow matrix herein can assume a constant vehicle speed.In one embodiment a processing of a flow matrix herein can assume avariable vehicle speed.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting. As used herein, thesingular forms “a,” “an,” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willbe further understood that the terms “comprise” (and any form ofcomprise, such as “comprises” and “comprising”), “have” (and any form ofhave, such as “has” and “having”), “include” (and any form of include,such as “includes” and “including”), and “contain” (and any form ofcontain, such as “contains” and “containing”) are open-ended linkingverbs. As a result, a method or device that “comprises,” “has,”“includes,” or “contains” one or more steps or elements possesses thoseone or more steps or elements, but is not limited to possessing onlythose one or more steps or elements. Likewise, a step of a method or anelement of a device that “comprises,” “has,” “includes,” or “contains”one or more features possesses those one or more features, but is notlimited to possessing only those one or more features. Forms of the term“based on” encompass relationships where an element is partially basedon as well as relationships where an element is entirely based on. Formsof the term “defined by” encompass relationships where an element ispartially defined by as well as relationships where an element isentirely defined by. Furthermore, a device or structure that isconfigured in a certain way is configured in at least that way, but mayalso be configured in ways that are not listed.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below, if any, areintended to include any structure, material, or act for performing thefunction in combination with other claimed elements as specificallyclaimed. The description set forth herein has been presented forpurposes of illustration and description, but is not intended to beexhaustive or limited to the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the disclosure. Theembodiment was chosen and described in order to best explain theprinciples of one or more aspects set forth herein and the practicalapplication, and to enable others of ordinary skill in the art tounderstand one or more aspects as described herein for variousembodiments with various modifications as are suited to the particularuse contemplated.

What is claimed is:
 1. A method comprising: obtaining, by one or moreprocessor, passenger information of one or more passenger travelingwithin a transportation network, wherein the passenger informationincludes passenger location information; and providing, by the one ormore processor, an output based on a processing of the passengerinformation, wherein the processing includes determining a cumulativewait time, and determining an adapted timetable using the cumulativewait time, wherein the output includes the adapted timetable, theadapted timetable having one or more adjusted vehicle timing, andwherein the output is transmitted to a computing node.
 2. The method ofclaim 1, wherein the processing includes determining one or more flowmatrix, and using the one or more flow matrix to determine thecumulative wait time.
 3. The method of claim 1, wherein the determiningthe cumulative wait time includes determining cumulative wait time ofpassengers through one or more interchange station of the transportationnetwork.
 4. The method of claim 1, wherein the method includestransmitting the adjusted timetable to a machine vehicle operator. 5.The method of claim 1, wherein the adapted timetable specifies one ormore of the following selected from the group consisting of (a) adjustedvehicle departure times and (b) adjusted vehicle speeds.
 6. The methodof claim 1, wherein the providing an output includes specifying adelayed departure time for one or more vehicle of the transportationnetwork to reduce a cumulative wait time for passengers of thetransportation network.
 7. The method of claim 1, wherein adjustedtimetable specifies a schedule of departures of vehicles of thetransportation network, and wherein the method includes presenting theadapted timetable to vehicle operators and passengers of thetransportation network.
 8. The method of claim 1, wherein adjustedtimetable specifies a schedule of departures of vehicles of thetransportation network, wherein the method includes transmitting theadapted timetable to computing nodes of vehicle operators and whereinthe method includes transmitting the adapted timetable to computingnodes of vehicle operators of the transportation network.
 9. The methodof claim 1, wherein the output includes information recommending achange to a passenger trajectory, and wherein the output is transmittedto a computing node of a passenger.
 10. The method of claim 1, whereinthe method includes tracking a route of a certain passenger through thetransportation network during a trip of the certain passenger, and basedon the determining the cumulative wait time, transmitting, during thetrip, to a passenger computing node of the certain passenger arecommendation to change the certain passenger's route through thetransportation network.
 11. The method of claim 1, wherein the output istransmitted to a computing node of a vehicle operator of thetransportation network.
 12. The method of claim 1, wherein the output isan output to adjust a timing of one or more vehicle of thetransportation network.
 13. The method of claim 1, wherein the passengerlocation information includes passenger location information of aplurality of passengers and wherein the passenger information includespassenger trajectory information.
 14. The method of claim 1, wherein theprocessing includes processing to determine the adapted timetable forproviding a reduced cumulative wait time.
 15. The method of claim 1,wherein the output is based on a processing of vehicle information. 16.A computer program product comprising: a computer readable storagedevice readable by one or more processing circuit and storinginstructions for execution by one or more processor for performing amethod comprising: obtaining passenger information of one or morepassenger traveling within a transportation network, wherein thepassenger information includes passenger location information; andproviding an output based on a processing of the passenger information,wherein the processing includes determining a cumulative wait time, anddetermining an adapted timetable using the cumulative wait time, whereinthe output includes the adapted timetable, the adapted timetable havingone or more adjusted vehicle timing, and wherein the output istransmitted to a computing node.
 17. A system comprising: a memory; oneor more processor in communication with the memory; and programinstructions executable by the one or more processor via the memory toperform a method, the method comprising: obtaining passenger informationof one or more passenger traveling within a transportation network,wherein the passenger information includes passenger locationinformation; and providing an output based on a processing of thepassenger information, wherein the processing includes determining acumulative wait time, and determining an adapted timetable using thecumulative wait time, wherein the output includes the adapted timetable,the adapted timetable having one or more adjusted vehicle timing, andwherein the output is transmitted to a computing node.
 18. The system ofclaim 17, wherein the providing an output includes specifying a delayeddeparture time for one or more vehicle of the transportation network toreduce a cumulative wait time for passengers of the transportationnetwork.
 19. The system of claim 17, wherein adjusted timetablespecifies a schedule of departures of vehicles of the transportationnetwork, wherein the method includes transmitting the adapted timetableto computing nodes of vehicle operators and wherein the method includestransmitting the adapted timetable to computing nodes of vehicleoperators of the transportation network.
 20. The system of claim 17,wherein the method includes tracking a certain passenger's route throughthe transportation network during a trip of the certain passenger, andbased on the determining the cumulative wait time, transmitting duringthe trip to a passenger computing node of the certain passenger arecommendation to change the certain passenger's route through thetransportation network.